REPORT SERVER - Exibindo tudo

Funcionamento normal no Design do Relatório


Todos sabemos que ao clicar no botão RUN o relatório é exibido na sua primeira página. Ao clicar nos botões 'Página Seguinte' e 'Página anterior' podemos navegar entre as páginas do relatório.

Contudo ao exibir o relatório no Report server essas setas de navegação são desabilitadas e só vemos a primeira página. As setas estão visíveis mais ao passar o mouse sobre eles aparece um icone em vermelho indicando que o item está desabilitado.

A pergunta é a seguinte : Como eu vejo as demais páginas do relatório no modo de visualização ?. Ou melhor, como o usuário interessado no relatório poderá visualizar todas as páginas do relatório ?

Modo de exibição default do Relatório

Na exibição do relatório apenas a primeira página é exibida, por default. Isto deve-se ao fato que se o relatório contiver 200 páginas com certeza vai demorar para abrir e se tiver 1000 páginas nem vai abrir nunca, provavelmente causará um erro na renderização do mesmo.

Sendo assim se o usuário precisar ver todas as páginas do relatório ele pode exportar o relatório para o Excel, PDF ou para outra forma desejada. Na exportação todas as páginas serão exibidas.

Modo de exibição Total do Relatório

Supondo agora que tenho um relatório pequeno e desejo que ele seja exibido numa única página. Isto limita o relatório a umas 200 linhas de dados mais ou menos especialmente pelo tempo que demora para abrir o relatório.

Para que todos os dados de um tablix sejam exibidos em uma única 'página' você deve selecionar nas propriedades do tablix (vide imagem abaixo - clicando com o botão direito do mouse no item 1) e selecionando o item 'keep together on one page if possible'

Note que isso pode causar demora para abrir o relatório ou mesmo pode sequer não funcionar porque no design foi definido que o tamanho da folha é A4 e seu tablix é enorme e não cabe nela.

Outro ponto importante a frisar é o item Height da caixa InteractiveSize das propriedades do relatório. Ela define o tamanho da página que o relatório será exibido. Alterando ela e colocando o valor zero o relatório será exibido como um todo ele como sendo uma única página. Isto causa um impacto na performance e faz com que demore muito para abrir a página se o relatório for longo, mais de 300 registros.

Por default o item InteractiveSize herda os dados do parâmetro PageSize que é o tamanho da folha de papel que iremos imprimir o relatório, por default é letter mas nas propriedades do relatório podemos alterar para o que desejamos. Note que uma folha de papel comum nossa é do formato A4.

Uma briga pra mais de metro

Se você optou por paginar um relatório e ao final deseja imprimir ele. Hoje em dia é raro, mas não impossível. Na hora que você imprime descobre que a ultima folha está em branco, completamente em branco. O que fazer para eliminar esse 'desperdício de papel' ? Isso fica para a uma próxima discussão e já vou adiantando que é através da propriedade 'visibility' do tablix que você controla isso. Vá pensando e veja se consegue resolver.